1. Technical Field
The present invention relates to information retrieval methods and systems. In particular, the present invention relates to information retrieval methods and systems that can be utilized with remote networks. Still more particularly, the present invention relates to a method and system for decreasing performance degradation which occurs as a result of the triggering of multiple-user-input events by a remote network user.
2. Description of the Related Art
The development of computerized information resources, including remote networks, allows users of data-processing systems to link with other servers and networks, in order to retrieve vast amounts of electronic information heretofore unavailable in an electronic medium. The "Internet" is a system of geographically distributed remote networks interconnected by computers executing network protocols. Protocols allow users to interact and share information over the networks. A protocol is essentially a set of rules or standards designed to enable computers to connect with one another and to exchange information with as little error as possible. Due to this wide-spread information sharing, remote networks such as the "Internet" have generally evolved into an "open" system for which developers can design software for performing specialized operations or services, essentially without restriction.
The term "Internet" is an abbreviation for "Internetwork," and refers commonly to the collection of networks and gateways utilizing the TCP/IP suite of protocols, well-known in the art of computer networking. TCP/IP is an acronym for "Transport Control Protocol/Interface Program," a software protocol developed by the Department of Defense for communication between computers. A protocol is a set of rules governing the format and meaning of messages or "packets" exchanged over networks. Each of the services available over the Internet is generally defined by its own networking protocol.
Electronic information transferred between networks is usually presented in hypertext format, a metaphor for presenting information in a manner in which text, images, sounds, and actions become linked together in a complex non-sequential web of associations that permit the user to "browse" or "navigate" through related topics, regardless of the presented order of the topics. These links are often established by both the author of a hypertext document and by the user, depending on the intent of the hypertext document. For example, traveling among links to the word "iron" in an article displayed within a graphical user interface in a data-processing system might lead the user to the periodic table of the chemical elements (i.e., linked by the word "iron"), or to a reference to the use of iron in weapons in Europe in the Dark Ages. The term "hypertext" was coined in the 1960s to describe documents, as presented by a computer, that express the nonlinear structure of ideas, as opposed to the linear format of books, film, and speech.
The term "hypermedia," on the other hand, more recently introduced, is nearly synonymous with "hypertext" but focuses on the nontextual components of hypertext, such as animation, recorded sound, and video. Hypermedia is the integration of graphics, sound, video, or any combination into a primarily associative system of information storage and retrieval. Hypermedia, as well as hypertext, especially in an interactive format where choices are controlled by the user, is structured around the idea of offering a working and learning environment that parallels human thinking--that is, an environment that allows the user to make associations between topics rather than move sequentially from one to the next, as in an alphabetic list. Hypermedia, as well as hypertext topics, are thus linked in a manner that allows the user to jump from one subject to other related subjects during a search for information. Hyper-link information is contained within hypermedia and hypertext documents, which allow a user to go back to the "original" or referring site by the mere "click" (i.e., with a mouse or other pointing device) of the hyper-linked topic.
A typical networked system that utilizes hypertext and hypermedia conventions follows a client-server architecture. In a client-server architecture, a client is usually a computer that accesses shared network resources provided by another computer (i.e., a server). A request by a user for news can be sent by a client application program to the server, which can be a remote computer system accessible over a remote network. The server scans and searches for raw (e.g., unprocessed) information sources (e.g., newswire feeds or newsgroups). Based upon user requests, the server presents filtered electronic information as server responses to the client process.
Client and server communicate with one another utilizing the functionality provided by Hypertext Transfer Protocol (HTTP). The World Wide Web (WWW) or, simply, the "Web," includes all the servers adhering to this standard which are accessible to clients via a Universal Resource Locator (URL). Remote network services such as the World Wide Web are typically accessed by specifying a unique network address (i.e., Universal Resource Locator). Universal Resource Locators have two basic components: the protocol to be used and the object pathname. For example, the Universal Resource Locator address, "http://www.uspto.gov" (i.e., home page for the U.S. Patent and Trademark Office), specifies a hypertext transfer protocol ("HTTP") and a pathname of the server (e.g., "www.uspto.gov"). The server name is associated with a unique numeric value (i.e., TCP/IP address).
Client and server are typically coupled to one another via Serial Line Internet Protocol (SLIP) or TCP/IP connections for high-capacity communication. Active within the client is a first process, known as a "browser," which establishes the connection with the server and presents information to the user. The server itself executes corresponding server software which presents information to the client in the form of HTTP responses. The HTTP responses correspond to Web "pages" constructed from a Hypertext Markup Language (HTML), or other server-generated data. HTTP, in the context of the World Wide Web, is simply a protocol that provides file transfers for hypertext-based information among local and remote systems.
Client and server typically display browsers for utilization by a user via a graphical user interface, a type of display format that enables users to choose commands, start programs, and see lists of files and other options by pointing to pictorial representations (e.g., icons) and lists of menu items on the screen. Choices can generally be activated either with a keyboard or pointing device such as a mouse. A browser presents information to a user through a graphical user interface window by displaying images, graphics, or text within the window region. The user, in turn, communicates with the application by "pointing" at graphical objects in the window with a pointer controlled by a hand-operated pointing device, such as a mouse, or by pressing keys of a keyboard.
The "Web" imposes a technique for interacting with data that differs from current graphical user interface models. In most graphical user interfaces, a double mouse button "click" is required to open applications and view data. The Web, however, employs a different model. A single mouse button click on a hypertext link typically allows a user to move to a new page, open images, play audio files, launch applications, and so forth.
Unfortunately, old habits die hard, and users often double click hypertext links to navigate the Web in the same manner learned via traditional graphical user interfaces. Sometimes, a double or multiple click of a hypertext link may result in the launching of multiple instances of a single application, which can adversely degrade the performance of the computer or data-processing system utilized by the user to navigate through remote networks such as the Internet. Some applications launched from remote networks such as the Internet via hypertext links require a time span of five to ten seconds after a "click" of a particular hypertext link, prior to being displayed for the user. The mouse pointer itself may briefly change shape or form to indicate to the user a "busy" state (i.e., that the desired application is loading).
However, because the mouse pointer changes shape only momentarily while the application continues to load, the user may believe that nothing, in fact, has happened, and may try to "click" the same hypertext link again. In effect, the user accidentally may have launched the desired application three or four times before realizing what has happened. Multiple layers of the same application can thus run in different background windows while the user continues to work in the environment of an active window. The user may not realize that several copies of the same application are running. However, the user will experience a performance degradation on the data-processing system in which the browser is displayed.
From the foregoing, it can be seen that a need exists for a method and system that prevent accidental multiple launches of applications from a remote network. Such a solution would allow users to safely launch a single copy of a given application, preventing the user from overloading the data-processing system running the application to the point where the data-processing system becomes unstable.